#ifndef ANTTWEAKBARMANAGER_H
#define ANTTWEAKBARMANAGER_H

#include "Singleton.h"

#include <AntTweakBar.h>
#include <D3D11.h>

class AntTweakBarManager : public Uncopyable
{
	AntTweakBarManager();
	friend class Singleton<AntTweakBarManager>;
public:
	void Initialise(ID3D11Device*& pDevice, int winWidth, int winHeight);
	void Draw();
	bool CheckInput(HWND& hWnd, UINT message, WPARAM wParam, LPARAM lParam);

	bool AddRWVariable(const std::string& varName, TwType varType, void* var, const std::string& params);
	
	void SetInputDetected(bool b);
	bool GetInputDetected() {return m_inputDetected;}
private:
	TwBar* m_pBar;
	bool m_inputDetected;
};

typedef Singleton<AntTweakBarManager> TheAntTweakBarManager;

#endif //ANTTWEAKBARMANAGER_H